<?php
class Message_Action_Controller extends Engine_Action_ControllerAbstract
{

           
     public function run() 
     {
         // полный запрет если отсутствует регистрация
         if (null != $this->auth->getIsReg())  {
            
             $this->setInfoModel('Сообщение');
             $this->view->setRenderTemplate( __CLASS__);
             
             
             // вывод сообщения
             $datamapper = new Message_Data_Mapper();
             $model = $datamapper->fetchOne($this->auth->getUserId(), $this->get['id']); // новая переменная чтобы не было 2 запросов в бд
             if (!$model) {
                  $this->view->errors = $datamapper->getErrors();
             } else {
                 $this->view->message = $model;
             }
             
             // если пользователь отправил сообщение
             if(isset($this->get['messageSub'])) {
                 //собрать модель    
                 $model = new Message_Model(array(
                      'data'=> $this->get['messageData'],
                      'sendToId'=> $this->get['toId'],
                      'fromId'=> $this->auth->getUserId(),
                      'timeCreated'=> time()
                 ));
                 // использовать datamapper
                 $datamapper2 = new Message_Data_Mapper();
                 if(!$datamapper2->save($model)){
                     $this->view->errors = $datamapper2->getErrors();
                 } else {
                     header('Location:/messages/');
                 }    
            }
                
         } else {
             $this->setInfoModel('Страница не найдена');
             $this->view->setRenderTemplate('NotFound_'); 
         }
     }    
}
